<!DOCTYPE html>
<html>

	<head>
		<meta charset="UTF-8">
		<title>ztree树菜单和tabs空间的结合</title>
		<script type="text/javascript" src="../js/jquery-1.8.3.js"></script>
		<script type="text/javascript" src="../js/easyui/jquery.easyui.min.js"></script>
		<script type="text/javascript" src="../js/easyui/locale/easyui-lang-zh_CN.js"></script>
		<link rel="stylesheet" href="../js/easyui/themes/black/easyui.css" />
		<link rel="stylesheet" href="../js/easyui/themes/icon.css" />

		<!--首先引入ztree的样式和js文件-->
		<script type="text/javascript" src="../js/ztree/jquery.ztree.all-3.5.js"></script>
		<link rel="stylesheet" href="../js/ztree/zTreeStyle.css" />
		<script type="text/javascript">
			$(function() {
				//1,进行ztree菜单设置
				var setting = {
					data: {
						simpleData: {
							enable: true,
						}
					},
					callback: {
						onClick: function(event, treeId, treeNode, clickFlag) {
							//alert(treeNode.page);
							var content = '<div style="width:100%;height:100%;overflow:hidden;">' + '<iframe src="' + treeNode.page + '" scrolling="auto" style="width:100%;height:100%;border:0;" ></iframe></div>';
							//没有page的属性菜单，不打开选项卡。
							if (treeNode.page) {
								//如果打开了，那么我们就需要选中
								if ($("#tt").tabs('exists', treeNode.name)) {
									//选中选项卡的代码
									$("#tt").tabs('select', treeNode.name);
								} else {
									//没有的话，那么我们就使用代码创建一个easyui的选项卡控件
									$("#tt").tabs('add', {
										title: treeNode.name,
										closable: true,
										content: content
									});
								}
							}
						}
					}
				};
				//2,提供树形菜单的数据
				var zNodes = [{
					id: 1,
					pId: 0,
					name: '父节点1'
				}, {
					id: 2,
					pId: 0,
					name: '父节点2'
				}, {
					id: 3,
					pId: 1,
					name: '百度',
					page: 'http://www.baidu.com'
				}, {
					id: 4,
					pId: 1,
					name: '京东',
					page: 'http://www.jd.com'
				}, {
					id: 5,
					pId: 2,
					name: '雅虎',
					page: 'http://www.yahoo.com'
				}, {
					id: 6,
					pId: 2,
					name: '搜狐',
					page: 'http://www.sohu.com'
				}];
				//3，生成菜单
				$.fn.zTree.init($("#base"), setting, zNodes);
				//右键菜单的使用。首先应该明白一点的就是我们需要使用一个空间，首先应该在这个布局的页面上面有
				//这个空间依赖的html标签，然后我们才能给这个html标签动态的添加所有的效果
				//对于每一个选项卡，我们给这个选项看添加右键事件
				$("#tt").tabs({
					onContextMenu: function(e, title, index) {
						e.preventDefault();
						//alert(title+"==="+index);
						$('#mm').menu({
							onClick:function(item){
								if(item.text=="close"){
									//alert(title);
									$("#tt").tabs('close',index);
								}else if(item.text=="close all"){
									var ss = $("#tt").tabs('tabs');
									var i = 0;
									while(i<ss.length){
										$("#tt").tabs('close',0);
									}
								}else{
									var ss = $("#tt").tabs('tabs');
									for(i=ss.length-1;i>=0;i--){
										if(i!=index){
											$("#tt").tabs('close',i);
										}
									}
								}
								
							}
						});
						$('#mm').menu('show', {
							left: e.pageX,
							top: e.pageY
						});
					}
				});
			});

		</script>
	</head>

	<body class="easyui-layout">

		<div data-options="region:'north',title:'North Title',split:true" style="height:100px;"></div>

		<div data-options="region:'south',title:'South Title',split:true" style="height:100px;"></div>

		<div data-options="region:'east',iconCls:'icon-reload',title:'East',split:true" style="width:100px;"></div>

		<div data-options="region:'west',title:'West',split:true" style="width:180px;">
			<!--折叠面板 -->
			<div class="easyui-accordion" data-options="fit:true">
				<div data-options="title:'基础菜单'">
					<!--在手风琴模式里面进行数据的设置，树模式一般都是依赖于ul标签的-->
					<ul id="base" class="ztree"></ul>
				</div>
				<div data-options="title:'系统菜单',selected:true">
					面板二
				</div>
			</div>
		</div>

		<div data-options="region:'center',title:'center title'" style="padding:5px;background:#eee;">
			<div id="tt" class="easyui-tabs" data-options="fit:true">
				<div title="Tab1">
					tab1
				</div>
				<div title="Tab2" data-options="closable:true">
					tab2
				</div>
				<div title="Tab3" data-options="iconCls:'icon-reload',closable:true">
					tab3
				</div>
			</div>
		</div>

		<div id="mm" class="easyui-menu" style="width:120px;">
			<div id="m-close">close</div>
			<div>
				close others
			</div>
			<div class="menu-sep"></div>
			<div data-options="iconCls:'icon-remove'">close all</div>
		</div>

	</body>

</html>